<?php
	session_start();
	
function Obtener_Conexion(){
	require('morsa.inc'); 
	$conexion=pg_connect("host=$DB_SERVER dbname=$DB user=$DB_LOGIN password=$DB_PASS") or die ("No pudo conectar con $DB en $DB_SERVER "  );
	return $conexion ;
}

function Desconectar($conexion){
	pg_close($conexion);
}

function cierra_session(){
	$clave=$_SESSION['clavecte'];
	$tipo_u=$_SESSION['tipousuario'];
	if ($tipo_u=='C'){
		$agente=0;
		$numcliente=$_SESSION['cvecliente'];
		$numsocio=$_SESSION['cvesocio'];	
	}else{
		$agente=$_SESSION['cveagente'];
		$numcliente=0;
		$numsocio=0;	
	}
	$conexion=Obtener_Conexion();
        $sql=" delete from swpr_session where trim(upper(clavecte))=trim(upper('$clave')) ";
	$res=pg_query($conexion,$sql)  or die ("Error $sql");
	$afectados=pg_affected_rows($res);
	$ip = $_SERVER['REMOTE_ADDR'];
	/*
	$ssql = "insert into swpr_logeo (ip_cte, clave_cte, cliente, socio, agente, tipoevento) values ('$ip','$clave',$numcliente,$numsocio,$agente,'2')";
        $rr= pg_query($conexion,$ssql) or die ("Error $ssql");
	
	$sql=" delete from swpr_session where trim(upper(clavecte))=trim(upper('$clave')) ";
	$res=pg_query($conexion,$sql)  or die ("Error $sql");
	$afectados=pg_affected_rows($res);
	*/
	session_unset();
	session_destroy(); 
	Desconectar($conexion);
	//return $sql.$afectados;
}

function cierra_session2($clave){
	$conexion=Obtener_Conexion();
	$sql=" delete from swpr_session where trim(upper(clavecte))=trim(upper('$clave')) ";
	$res=pg_query($conexion,$sql)  or die ("Error $sql");
	$afectados=pg_affected_rows($res);
	session_unset();
	session_destroy(); 
	Desconectar($conexion);
}

function fnactualiza_session_inicio(){
	$conexion=Obtener_Conexion();
	$varnewtime=time();
	$vartiempo=$varnewtime-10*60;
	$sql=" delete from swpr_session where tiempo<$vartiempo ";
	$res=pg_query($conexion,$sql)  or die ("Error $sql");
	Desconectar($conexion);
}

function fnactualiza_session($login){
	$conexion=Obtener_Conexion();
	$varnewtime=time();
	$vartiempo=$varnewtime-10*60;
	$upperlogin=strtoupper($login);
	$sql=" delete from swpr_session where tiempo<$vartiempo ";
	$res=pg_query($conexion,$sql)  or die ("Error $sql");

	$sql=" select * from swpr_session where trim(upper(clavecte))=trim(upper('$login')) ";
	$res=pg_query($conexion,$sql)  or die ("Error $sql");
	if ((pg_num_rows($res)>0)){
		$sqlupdate=" update swpr_session set tiempo=$varnewtime where trim(upper(clavecte))=trim(upper('$login')) ";
		$resupdate=pg_query($conexion,$sqlupdate)  or die ("Error $sqlupdate");
	}else{
		$sqlinsert=" insert into swpr_session (clavecte,tiempo) values ('$upperlogin',$varnewtime) ";
		$resinsert=pg_query($conexion,$sqlinsert)  or die ("Error $sqlinsert");
	}
	Desconectar($conexion);
}
	
function Menu($tipousuario){
	$error=0;
	require_once('cascading_menu.class');
  	$cadretorno.="<style type='text/css' media='screen'>";
	$cadretorno.=" dl, dt, dd, ul, li {";
	$cadretorno.=" margin: 0; ";
	$cadretorno.=" padding: 0; ";
	$cadretorno.=" list-style-type: none; ";
	$cadretorno.=" } ";
	$cadretorno.=" #menu { ";
	$cadretorno.=" position: absolute; ";
	$cadretorno.=" top: 4; ";
	$cadretorno.=" left: 0; ";
	$cadretorno.=" z-index:100; ";
	$cadretorno.=" width: 100%; ";
	$cadretorno.=" } ";
	$cadretorno.=" #menu dl { ";
	$cadretorno.=" float: left; ";
	$cadretorno.=" width: 12em; ";
	$cadretorno.=" } ";
	$cadretorno.=" #menu dt { ";
	$cadretorno.=" cursor: pointer; ";
	$cadretorno.=" text-align: center; ";
	$cadretorno.=" font-weight: bold; ";
	$cadretorno.=" background: #ccc; ";
	$cadretorno.=" border: 1px solid gray; ";
	$cadretorno.=" margin: 1px; ";
	$cadretorno.=" } ";
	$cadretorno.=" #menu dd { ";
	$cadretorno.=" display: none; ";
	$cadretorno.=" border: 1px solid gray; ";
	$cadretorno.=" } ";
	$cadretorno.=" #menu li { ";
	$cadretorno.=" text-align: center; ";
	$cadretorno.=" background: #fff; ";
	$cadretorno.=" } ";
	$cadretorno.=" #menu li a, #menu dt a { ";
	$cadretorno.=" color: #000; ";
	$cadretorno.=" text-decoration: none; ";
	$cadretorno.=" display: block; ";
	$cadretorno.=" height: 100%; ";
	$cadretorno.=" border: 0 none; ";
	$cadretorno.=" } ";
	$cadretorno.=" #menu li a:hover, #menu li a:focus, #menu dt a:hover, #menu dt a:focus { ";
	$cadretorno.=" background: #eee; ";
	$cadretorno.=" } ";
	$cadretorno.=" #site { ";
	$cadretorno.=" position: absolute; ";
	$cadretorno.=" z-index: 1; ";
	$cadretorno.=" top : 20px; ";
	$cadretorno.=" left : 10px; ";
	$cadretorno.=" color: #000; ";
	$cadretorno.=" background-color: #ddd; ";
	$cadretorno.=" padding: 5px; ";
	$cadretorno.=" border: 1px solid gray; ";
	$cadretorno.=" } ";
        $cadretorno.=" </style>\n";
	$cadretorno.=" <script type='text/javascript'> \n";
	$cadretorno.=" <!-- \n";
	$cadretorno.=" window.onload=show; \n";
	$cadretorno.=" function show(id) { \n";
	$cadretorno.=" var d = document.getElementById(id); \n";
	$cadretorno.="	for (var i = 1; i<=10; i++) { \n";
	$cadretorno.="		if (document.getElementById('smenu'+i)) {document.getElementById('smenu'+i).style.display='none';} \n";
	$cadretorno.="	} \n";
	$cadretorno.=" if (d) {d.style.display='block';} \n";
	$cadretorno.=" } \n";
	$cadretorno.=" //--> \n";
	$cadretorno.=" </script> \n";
	$cadretorno.="<div id='menu'> \n";
	
	
	
	
	$conexion=Obtener_Conexion();
	$sql="select id_opc, url, descripcion, tipomenu from swpr_menu where tipo_usuario='$tipousuario' and tipomenu=0 order by id_opc ";
	$res=pg_query($conexion,$sql)  or die ("Error $sql");
	$conta=1;
	$contasm=1;
	
	while($filas=pg_fetch_array($res)){
		$sm=$filas['id_opc'];
		$descripcion=$filas['descripcion'];
		$uri=$filas['url'];
		//$direccion=$uri;
		$direccion=chr(39).trim($uri).chr(39);
		
			//buscar los submenus	
			$sqlsm="select id_opc, url, descripcion from swpr_menu where tipo_usuario='$tipousuario' and tipomenu=$sm order by id_opc ";
			$ressm=pg_query($conexion,$sqlsm)  or die ("Error $sqlsm");
			if (pg_num_rows($ressm)>0){
				$cadretorno.="<dl> \n";
				$cadretorno.=" <dt onmouseover=".chr(34)."javascript:show(".chr(39)."smenu".$contasm.chr(39).");".chr(34).">".$descripcion."</dt> \n";
					
			}else{
				$cadretorno.="<dl> \n";
				$cadretorno.=" <dt onmouseover='javascript:show();' onclick=".chr(34)."respuesta(".$direccion.");".chr(34)." ><a href='#' title='' >".$descripcion."</a></dt> \n";
				$cadretorno.="</dl> \n";
			}
			$encbezadosm=1;
			while($filassm=pg_fetch_array($ressm)){
				$descripcionsm=$filassm['descripcion'];
				$urism=$filassm['url'];
				$direccionsm=chr(39).trim($urism).chr(39);
				if ($encbezadosm==1){
					$cadretorno.=" <dd id=".chr(34)."smenu".$contasm.chr(34)."> \n";
					$cadretorno.=" <ul> \n";
					$encbezadosm=2;
				}
				$cadretorno.="	<li><a href=".chr(34)."#".chr(34)." onclick=".chr(34)."respuesta($direccionsm);".chr(34).">$descripcionsm</a></li> \n";
			}
			
			if ($encbezadosm==2){
				$contasm = $contasm + 1;
				$cadretorno.=" </ul> \n";
				$cadretorno.=" </dd> \n";
				$cadretorno.="</dl> \n";
			}
			
		
		$conta=$conta+1;
	}
	$cadretorno.="<dl> \n";
        $cadretorno.=" <dt onmouseover='javascript:show();' ><a href='cerrar_sesion.php' title='' target='_parent'>Salir</a></dt> \n";
        $cadretorno.="</dl> \n";
	
	//$cadretorno.="<li><a href=".chr(34)."#".chr(34)." onclick=".chr(34)."respuesta('cerrar_sesion.php')".chr(34)." target='_parent'>Salir</a></li> \n";

	//$cadretorno.="</ul>";
	Desconectar($conexion);
	return $cadretorno;
}



function fString($string, $len)
{   $string=trim($string);
    if (strlen($string) < $len)
    {
        $addchar=($len - strlen($string)) ;
        for ($i = 0; $i < $addchar; $i++)
        {
            //$string=sprintf("$string%s", "0");
            $string.=".";
        }
    }

    if (strlen($string) > $len)
    {
        $string=substr($string,0,$len);
    }

    return $string;
}

?>
